package ro.flashbite.game_engine.data.intefaces
{
	import ro.flashbite.game_engine.data.PlayerData;

	public interface IAppDataStorage
	{
		function get applicationVolume():Number;
		function set applicationVolume(vol:Number):void;
		
		
		function get currentPlayer_Name():String;
		function set currentPlayer_Name(playerName:String):void;
		
		function get currentPlayer_CharacterName():String;
		function set currentPlayer_CharacterName(charName:String):void;
		
		function get currentPlayer_Difficulty():uint;
		function set currentPlayer_Difficulty(diff:uint):void;
		
		function get currentPlayer_Scores():Vector.<IScoreObject>;
		function set currentPlayer_Scores(scores:Vector.<IScoreObject>):void;
		function currentPlayer_addScoreObject(scoreObj:IScoreObject):void;
		
		function get currentPlayer_CharactersUnlocked():Vector.<String>;
		function set currentPlayer_CharactersUnlocked(chars:Vector.<String>):void;
		function currentPlayer_addCharacterUnlocked(char:String):void;
		
		function get currentPlayer_Location():String;
		function set currentPlayer_Location(location:String):void;
		
		function get currentPlayer_LocationsUnlocked():Vector.<String>;
		function set currentPlayer_LocationsUnlocked(locations:Vector.<String>):void;
		function currentPlayer_addLocationUnlocked(location:String):void;
		
		function get currentPlayer():IPlayerData;
		function set currentPlayer(player:IPlayerData):void;
		
		
		function get allPlayers():Vector.<PlayerData>;
	}
}